/**
 * @file      ac_tlm_counter.cpp
 * @author    Bruno de Carvalho Albertini
 * 
 * @author    The ArchC Team
 *            http://www.archc.org/
 *
 *            Computer Systems Laboratory (LSC)
 *            IC-UNICAMP
 *            http://www.lsc.ic.unicamp.br/
 *
 * @author    Diego Machado de Assis
 * 
 * @version   0.1
 * @date      Sun, 02 Apr 2006 08:07:46 -0200
 * 
 * @brief     Implements a ac_tlm counter.
 * 
 * @attention Copyright (C) 2002-2005 --- The ArchC Team
 * 
 *   This library is free software; you can redistribute it and/or
 *   modify it under the terms of the GNU Lesser General Public
 *   License as published by the Free Software Foundation; either
 *   version 2.1 of the License, or (at your option) any later version.
 * 
 *   This library is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *   Lesser General Public License for more details.
 * 
 * 
 */

//////////////////////////////////////////////////////////////////////////////
// Standard includes
// SystemC includes
// ArchC includes

#include "ac_tlm_counter.h"

//////////////////////////////////////////////////////////////////////////////

/// Namespace to isolate counter from ArchC
using user::ac_tlm_counter;

/// Constructor
ac_tlm_counter::ac_tlm_counter( sc_module_name module_name ) :
  sc_module( module_name ),
  target_export("iport")
{
  /// Binds target_export to the counter
  target_export( *this );

  // SC_HAS_PROCESS(ac_tlm_counter);
  // SC_THREAD ( writem );

  /// Initialize count variable
  count = 0;
}

/// Destructor
ac_tlm_counter::~ac_tlm_counter() {
}


ac_tlm_rsp_status ac_tlm_counter::writem( const uint32_t &a , const uint32_t &d )
{
  wait(d,SC_NS);
  return SUCCESS;
}

